Computer systems and services have revolutionized the way people live, work, and do business. The operation of such systems and services are directed, in large part, by computer software. Computer software is often generated by computer programmers drafting source code (i.e., a computer program). That source code is ultimately compiled or interpreted into machine readable code prior to and/or at execution time.
As the functionality of such computing systems and services has increased, computer programs have become ever more complex. Many computer programs are too complex to be authored by any one person. Accordingly, computer programs are often collaboratively authored by a team of computer programmers. In order to facilitate collaborative authoring of computer programs, a variety of helpful conventional collaborative authoring programs exist. Such tools often permit the team to move from one version of the code to the next.
In addition to being more complex to author, the software should be carefully reviewed for each version of the code. Accordingly, collaborative review programs also exist. Thus, while collaborative authoring programs permit changes to be made in order to move from one version of the code to the next, collaborative review programs enable detailed review of each version of the code so as to understand and plan the changes that should be made in the next phase of authoring.